<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Object.defineproperty方法</title>
</head>
<body>
    
</body>
<script>
    let number=18
    let person = {
        name: '张三',
        address: '北京'
    }
    Object.defineProperty(person, 'age', {
        /*
             configurable:true,//是否可以删除,默认值是false
             enumerable:true,//是否可以枚举,默认值是false
             writable:true,//是否可以修改,默认值是false
             value:16//初始值
        */
      value:16,
      //当有人读取age属性时，会调用get函数，并把结果返回
      //当有人修改age属性时，会调用set函数，并把修改的值作为参数传入set函数
      get:function(){
          return number
      },
      set:function(newValue){
          number=newValue
      }
    })
    console.log(person)
    
</script>
</html>